home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 05.zip / BS1 part 5 / ANC_UTULITYS_16.adf / arclist / scroll.arc / ScrollIII.S < prev    next >
Text File  |  1988-09-21  |  3KB  |  143 lines

  1. gfxb=$7ff00
  2. count=$7ff04
  3. baba=$7ff08
  4. charp=$7ff0c
  5. oldcop=$7ff10
  6. intrpt=$7ff14
  7. count2=$7ff18
  8.  
  9. rastport=$7fe00
  10. bitmap=$7fea0
  11.  
  12. org $40000
  13. load $40000
  14.  
  15. beg:
  16. movem.l a6/a5/a4/a3/a2/a1/a0/d7/d6/d5/d4/d3/d2/d1/d0,-(A7)
  17. move.l #scrolly,charp            ; Where scrolly resides
  18. move.l $000004,a6
  19. lea    glib,a1
  20. jsr    -408(a6)
  21. move.l d0,a6
  22. move.l a6,gfxbase
  23.  
  24. lea    bitmap,a0
  25. moveq    #1,d0
  26. moveq    #8,d1
  27. moveq    #8,d2
  28. jsr    -390(a6)            ; InitBitmap
  29.  
  30. lea    bitmap,a0
  31. move.l    #$48000,8(a0)
  32. move.l    #$49000,10(a0)            ; Bitplane pointers
  33.  
  34. move.l    a0,rastport+4            ; Init BitMap ptr
  35.  
  36. lea    rastport,a1
  37. jsr    -198(a1)            ; InitRastPort
  38. move.b #1,count2
  39. move.b #$08,count
  40. lea    $48000,a0
  41. moveq  #$7f,d0
  42. clrmem:
  43. clr.l  (a0)+
  44. dbf    d0,clrmem
  45. move.w #$8380,$dff096
  46. move.w #$0020,$dff096
  47. move.w #$4000,$dff09a
  48. chkbtn:
  49. btst   #6,$bfe001
  50. beq    pressed
  51. cmpi.b #228,$dff006
  52. bne.s  chkbtn
  53. move.w #$00f,$dff180
  54. move.l #copl,$dff080
  55. lea    $dff000,a0
  56. clr.l  $120(a0)
  57. clr.w  $102(a0)
  58. move.l #$f9f00000,$40(a0)
  59. move.l #$ffffffff,$44(a0)
  60. move.l #$00048000,$50(a0)
  61. move.l #$00047ffe,$54(a0)
  62. clr.l  $64(a0)
  63. move.w #$1018,$58(a0)
  64. wtbl:
  65. btst   #$e,$dff002
  66. bne.s  wtbl
  67. move.l #$f9f00000,$40(a0)
  68. move.l #$ffffffff,$44(a0)
  69. move.l #$00049000,$50(a0)
  70. move.l #$00048ffe,$54(a0)
  71. clr.l  $64(a0)
  72. move.w #$1018,$58(a0)
  73. wtbl2:
  74. btst   #$e,$dff002
  75. bne.s  wtbl2
  76. subq.b #$01,count
  77. bne.s  endint
  78. move.b #$08,count
  79. scroll:
  80. subq.b #$01,count2
  81. bne.s  nonewchar
  82. move.l charp,a0
  83. moveq  #1,d0
  84. lea    rastport,a1
  85. move.l gfxbase,a6
  86. jsr    -60(a6)                ; Fix char into workarea
  87. move.b #8,count2
  88. nonewchar:
  89.  
  90. endint:
  91. move.w    #$fff,$dff180
  92. bra    chkbtn
  93. pressed:
  94. move.w #$8020,$dff096
  95. move.w #$c000,$dff09a
  96. move.l $26(a6),$dff080
  97. movem.l (a7)+,a6/a5/a4/a3/a2/a1/a0/d7/d6/d5/d4/d3/d2/d1/d0
  98. rts
  99.  
  100. gfxbase:dc.l 0
  101. copl:
  102. dc.w $008e,$6080,$0090,$a0e0
  103. dc.w $0092,$0028,$00e0,$0004,$00e2,$8000
  104. dc.w $0094,$00d8,$0108,$0002
  105. dc.w $0104,$0010,$0100,$1200
  106. dc.w $8f01,$ff01
  107. dc.w $0182,$000f,$9001,$ff00
  108. dc.w $0182,$044f,$9101,$ff00
  109. dc.w $0182,$088f,$9201,$ff00
  110. dc.w $0182,$0ccf,$9301,$ff00
  111. dc.w $0182,$0fff,$9401,$ff00
  112. dc.w $0182,$0ccf,$9501,$ff00
  113. dc.w $0182,$088f,$9601,$ff00
  114. dc.w $0182,$044f,$9701,$ff00
  115. dc.w $0182,$000f,$9801,$ff00
  116. dc.w $fffe,$fffe
  117. glib:
  118. dc "graphics.library",0
  119. eo:
  120.  
  121. scrolly:
  122. dc "tetragon proudly presents:     tetracrunch v1.02, written by ",0
  123.  
  124. char:
  125. dc.b %11111111
  126. dc.b %10000001
  127. dc.b %10000001
  128. dc.b %10000001
  129. dc.b %10000001
  130. dc.b %10000001
  131. dc.b %10000001
  132. dc.b %11111111
  133.  
  134. dc.b %11111111
  135. dc.b %11111110
  136. dc.b %11111110
  137. dc.b %11111110
  138. dc.b %11111110
  139. dc.b %11111110
  140. dc.b %11111110
  141. dc.b %10000000
  142. end:
  143.